perm filename CACHE.SLI[AM,DBL] blob sn#450713 filedate 1979-06-19 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00035 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00004 00002	\input hdr
C00006 00003	\tenpoint
C00007 00004	\parindent 19pt
C00009 00005	\tenpoint
C00010 00006	{\3Techniques used in highly EXPRESSIVE programs}
C00011 00007	\ctrline{\3FOCUS ON}
C00012 00008	\ctrline{\3FOCUS ON}
C00013 00009	\ctrline{\3FOCUS ON}
C00014 00010	.
C00015 00011	.
C00016 00012	\ctrline{\2COGNITIVE ECONOMY}
C00017 00013	{\2\ctrline{ASSUMPTIONS}}
C00018 00014	{\2\ctrline{SELF{\3-}MODIFICATION}}
C00019 00015	.
C00020 00016	{\2\ctrline{SELF{\3-}MODIFICATION}}
C00021 00017	\vskip 4xgpin
C00022 00018	\ctrline{\2EXTENDING A}
C00023 00019	\tenpoint
C00024 00020	\ctrline{\2INDIRECT ACCESSING}
C00026 00021	[APPLY (APPLY (GET STAR DEFN) GENL) PRIMES]
C00027 00022	\ctrline{\2DEFINING A NEW SLOT}
C00028 00023
C00029 00024	\3(GET MERLE PARENTS)
C00034 00025	\vskip 3xgpin
C00035 00026	{\2\ctrline{DYNAMICALLY}}
C00036 00027	{\2\ctrline{CACHING\3:}}
C00037 00028	\noindent \2PRIMES
C00038 00029	\3\ctrline{EXTRA ARGUMENTS TO \  \2GET}
C00039 00030	\noindent \2PRIMES
C00040 00031	{\2\ctrline{PSYCHOLOGICAL IDEAS}}
C00041 00032	{\2\ctrline{EXPECTATION{\3-}SIMPLIFIED PROCESSING}}
C00042 00033	\ctrline{\2MULTIPLE LEVELS}
C00043 00034	\ctrline{\2CONCLUSIONS}
C00044 00035	\vfill\end
C00057 ENDMK
C⊗;
\input hdr
%  ; = <
\def\2{\:;}
\def\3{\:=}
\def\4{\:<}
\def\5{\:q} % cmb10
\def\6{\:a} % cmr10
\def\forall{\mathrel{\char'470}}
\def\hook{\mathrel{\char'472}}
\def\inbox#1{\vjust{\hrule\hjust{\vrule\hskip 2pt 
             \vjust{\vskip 2pt #1 \vskip 2pt}\hskip 2pt\vrule}\hrule}}
\def\foo #1{\advcount9  {\footnote {\unskip
               $↑{\count9}$\unskip}{#1}}}
\def\strdotstr #1{$\underline{#1}$}
\def\inv{\raise 2.1pt\hjust{\:d-1}}
\def\minv{{\scriptstyle{\raise 2.1pt\hjust{-1}}}}
\hsize 8.3xgpin \vsize 9xgpin \maxdepth 2pt \parindent 0pt \topbaseline 10pt
\parskip 10pt plus 2pt minus 1pt \lineskip 0pt
\topskip 24pt plus 6pt minus 10pt  \botskip 3pt plus 6pt
\output{\baselineskip 0pt\lineskip0pt	% beginning of output routine, resets skips
	\vjust to 10xgpin{         % prepare the full page of this fixed height
		\vskip 24pt	% blank space in place of headlines
		\hjust{\hskip -0.95xgpin\page}		% insert the page contents
		\vfill		 % extra space before the page number
	}			% completion of the \vjust
	\advcount0}		% increase page number by 1 and end output routine
\jpar 50
\def\lead{\leaders\hjust to 10pt{\hfill .\hfill}\hfill}
\tenpoint

\ctrline{\2COGNITIVE \  ECONOMY}

\vskip 2.3xgpin

\ctrline{\3Douglas B. Lenat}

\vskip 0.5xgpin

\ctrline{\4Computer Science Department}

\ctrline{\4Stanford University}

\vskip 3xgpin

\ctrline{\it A talk for the IBM Research Center, Yorktown Heights}

\vfill

\eject

\parindent 19pt

\parskip 5pt \lineskip 4pt

\noindent {\3INTRODUCTION}

\vskip 9pt

\noindent {\3THE  ASSUMPTIONS}

{A Model of Intelligence}

{A Model of Intelligent Program Organization}

{A Model of (Present) Computers}

\vskip 9pt

\noindent {\3SELF-MODIFICATION & -MONITORING}

{Dynamically Modifying Itself}

\parindent 38pt

{\:j EXTENDING A SCHEMATIZED REPRESENTATION}

\parindent 19pt

{Dynamically Monitoring the Task Environment}

\vskip 9pt

\noindent {\3CACHING:  Intelligent Redundancy}

{Types of Caches}

{An Example}

{Contrasts with Psychological Ideas of Economy}

{Storing and Updating Cached Values}

{The Spectrum of Data Reductions}

\vskip 9pt

\noindent {\3EXPECTATION-FOCUSING}

\vskip 9pt

\noindent {\3MULTIPLE LEVELS OF ABSTRACTION}

\vskip 9pt

\noindent {\3COGNITIVE ECONOMY REVISITED}

\parskip 20pt plus 1pt minus 1pt \lineskip 8pt

\vfill

\eject
\tenpoint

\ctrline{\3FOCUS ON}

\yskip



\ctrline{\2EXPRESSIBILITY}

\yyskip

{\3Rapidly   construct   a   working experimental vehicle}

\yyskip

FOR  EXAMPLE:

\yyskip


{\3SAFE} \ \ \ \ \  [Balzer, 1976-78]

{\3PSI} \ \ \ \ \  [Green, 1975-79]

{\3EMYCIN} \ \ \ \ \  [Feigenbaum, 1977]

{\3RITA} \ \ \ \ \  [Anderson and Gillogly, 1976-78]

{\3ROSIE} \ \ \ \ \  [Waterman, 1979]

{\3KRL} \ \ \ \ \  [Bobrow and Winograd 1976-79]

\vfill

\eject
{\3Techniques used in highly EXPRESSIVE programs}


\vskip 2xgpin

{\3
$\bullet $  Very high level language

$\bullet $ Multiple levels of abstraction,

$\bullet $  Pattern-directed knowledge sources

$\bullet $ Nonredundant hierarchy
}

\vfill

\eject

\ctrline{\3FOCUS ON}

\yskip


\ctrline{\2EFFICIENCY}

\yyskip

{\3Programs (semi-)automatically improve themselves}

\vfill

\eject

\ctrline{\3FOCUS ON}

\yskip


\ctrline{\2EFFICIENCY}


\yyskip

\yyskip

{\3STATIC Analysis and MANUAL Improvement}

\yyskip

\yyskip

{\3
$\bullet $ Analyzing 
program flow and structure

$\bullet $ Designing data structures to be appropriate

$\bullet $ Compiling

$\bullet $ Optimizing transformations of the program}

\vfill

\eject

\ctrline{\3FOCUS ON}

\yskip


\ctrline{\2EFFICIENCY}


\yyskip

\yyskip

{\3DYNAMIC Analysis and SELF-Improvement}

\yyskip

\yyskip

{\3
$\bullet $ Self-monitoring during runtime

$\bullet $ Caching results

$\bullet $ Expectation-filtering

$\bullet $ Multiple levels of abstraction (?)}

\vfill

\eject

.

\vskip 3xgpin

\ctrline{\2INTELLIGENCE \3:}

\yyskip

{\3AMOUNT of Knowledge

ORGANIZATION of Knowledge

APPLICABILITY of Knowledge}

\vfill

\eject

.

\vskip 3xgpin

\yyskip

{\3
Intelligent Learning

Intelligent Redundancy

Intelligent Focus of Attention

Intelligent Knowledge Organization}

\vfill

\eject

\ctrline{\2COGNITIVE ECONOMY}

\vskip 3xgpin

\parskip 10pt

{\3The
degree to which a program is 

adapted to its
environment}

\parskip 20pt plus 1pt minus 1pt \lineskip 8pt


\vfill

\eject

{\2\ctrline{ASSUMPTIONS}}

{\3
``Intelligence'' can be
modelled as heuristic search, 

guided by
pattern-directed rules, 

implementable on a uniprocessor.}

\vfill

\eject

{\2\ctrline{SELF{\3-}MODIFICATION}}

\3\ctrline{AND}

{\2\ctrline{SELF{\3-}MONITORING}}

\vskip 2.5xgpin


{\3\ctrline{INTELLIGENT LEARNING}}


\vfill

\eject

.

\vskip 6xgpin

\hjust to 8.3xgpin{\2HOW \hfill WHAT}

\vfill

\eject

{\2\ctrline{SELF{\3-}MODIFICATION}}

\vskip 2.3xgpin


{\3 Static Manual Redesign}

{\3 Dynamic Selection}

\vskip 1.0xgpin

{\3 Dynamic Discovery}

\vfill

\eject

.

\vskip 6xgpin

{\3 Dynamic Extension}

\vfill

\eject

\vskip 4xgpin

{\3

\noindent ``If
one conjunct appears to be false more often than any other, make it the first
one tested in the conjunction''  

\noindent ``If each person will use the program only
once, briefly, it is not worth building a model of each such user''

\noindent ``A function that is used frequently and changed rarely should be
compiled.''

}

\vfill

\eject

\ctrline{\2EXTENDING A}

\ctrline{\2SCHEMATIZED}

\ctrline{\2REPRESENTATION}

\yyskip

\yyskip

{\3Defining new types of SLOTS}

\vfill

\eject

\vskip 3xgpin

\tenpoint

{\2\ctrline{THE LEGAL}}

{\2\ctrline{SLOT{\3-}COMBINERS}}


{\3STAR:}  ANCESTOR $=↓{df}$ PARENT$↑*$

{\3UNION:} PARENT $=↓{df}$ FATHER $\union$ MOTHER

{\3COMPOSITION:} FIRST-COUSIN $=↓{df}$ CHILD$\circ$SIBLING$\circ$PARENT

{\3DIFFERENCE:} REMOTE-ANCESTOR $=↓{df}$ ANCESTOR $-$ PARENT

\yskip

\vfill

\eject

\ctrline{\2INDIRECT ACCESSING}

\ctrline{\2OF SLOT ENTRIES}


\yyskip


\yyskip



\noindent \3``Get all the generalizations of the concept `primes'?"

(GET PRIMES GENERALIZATIONS)

\vfill

\eject


(APPLY (GET GENERALIZATIONS DEFN)  PRIMES)

\vfill

\eject


[APPLY 

\hjust{\hskip40pt (APPLY (GET DEFN DEFN) GENERALIZATIONS) }


\hjust{\hskip40pt PRIMES]}

\vfill

\eject

\hjust{\hskip 1pt [APPLY}

\vskip 3.5xgpin

\hjust{\hskip 23pt PRIMES]}

\vfill

\eject

\4\hjust{\hskip 30pt (APPLY (GET (GET GENERALIZATIONS SLOT-COMBINER) DEFN)}

\4\hjust{\hskip 39pt (GET GENERALIZATIONS BUILT-FROM))}

\vfill

\eject

[APPLY (APPLY (GET STAR DEFN) GENL) PRIMES]

\vfill

\eject

[APPLY ($\lambda$ (c) (CONS c (self (GET c GENL))))   

\hjust{\hskip 40pt   PRIMES]}

\vfill

\eject

\ctrline{\2DEFINING A NEW SLOT}


\yyskip

\yyskip

\2DG


\3SLOT-COMBINER:  \ Difference

\3BUILT-FROM:  \ Generalizations, Genl

\3GENL: \  Generalizations

\3SPEC: \ Grandparents, Every-2nd-Generation

\3ISA: \ Slot

WORTH: 100

\3CREATION-DATE: 6/19/79

\vfill

\eject


{\2\ctrline{DEFINING A NEW}}

{\2\ctrline{SLOT{\3-}COMBINER}}


\vskip 3xgpin

\2INTRUDE

\vskip 1.1xgpin

\3SLOT-COMBINER:  \ Composition

\3BUILT-FROM:  \ Star1, Once2, Star1

\3GENL: \ Possible-intrude

\3ISA: \ Slot-combiner

\3CREATION-DATE: 6/19/79

WORTH: 500

\vfill

\eject

{\2\ctrline{DEFINING A NEW}}

{\2\ctrline{SLOT{\3-}COMBINER}}


\vskip 3xgpin

\2INTRUDE

\vskip 1.4xgpin


\hjust{\3f\hskip 30pt g \hskip 22pt f}

\vfill

\eject

\3(GET MERLE PARENTS)

((GET PARENTS DEFN) MERLE)

(((GET DEFN DEFN) PARENTS) MERLE)

(($\lambda$ (s) ((GET (GET s SLOT-DEFINER) DEFN) (GET s BUILT-FROM))) PARENTS) MERLE)

(((GET (GET PARENTS SLOT-DEFINER) DEFN) (GET PARENTS BUILT-FROM)) MERLE)

(((GET UNION DEFN) FATHER MOTHER) MERLE)

((($\lambda$ (s1 s2) ($\lambda$ (c) (LIST (GET c s1) (GET c s2)))) FATHER MOTHER)  MERLE)

(($\lambda$ (c) (LIST (GET c FATHER) (GET c MOTHER)))  MERLE)

(LIST (GET MERLE FATHER) (GET MERLE MOTHER))

(LIST SID BETTY)

(SID BETTY)

\vfill

\eject

\vskip 3xgpin

{\3 ``Before giving up on a (GET C F) request,

try to 
(GET F DEFN)
and apply it to
C.''}

\vfill

\eject
{\2\ctrline{DYNAMICALLY}}

{\2\ctrline{MONITORING THE}}

{\2\ctrline{TASK ENVIRONMENT}}

\vskip 3xgpin


\3LEARNING BY BEING TOLD

\hjust{\hskip 30pt Specific to current data set}

\hjust{\hskip 30pt Fixed part of program's world}

LEARNING BY OBSERVING

\hjust{\hskip 30pt Sense current environment}

\hjust{\hskip 30pt Full record of entire history}

LEARNING BY PREDICTING

\hjust{\hskip 30pt Models of the Users}

\vfill

\eject
{\2\ctrline{CACHING\3:}}

\vskip 1xgpin

\3\ctrline{INTELLIGENT REDUNDANCY}


\vfill

\eject

.

\vskip 3.5xgpin

\3Record F(x)

\vfill

\eject

.

\vskip 4.2xgpin

\3Record the process of finding F(x)

\vfill

\eject


\noindent \2PRIMES

\vskip 5pt

\3WORTH: 783

GENL: \ Numbers

SPEC: \ Odd-primes, Even-primes, Prime-pairs

EXAMPLES: \ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29,...

$\vdots $

\3GENERALIZATIONS: \ Primes, Numbers, Objects,

\hjust{\hskip 5xgpin   Anything}

$\vdots $

\vfill

\eject

\3\ctrline{EXTRA ARGUMENTS TO \  \2GET}

\vskip 1xgpin



\3 cpu time to expend

space to expend

whether the user can be asked about this

how fresh the cache must be

minimum amount of resources which must have
been expended at the time the cache was written.

\yyskip

\yyskip

(GET PRIMES GENERALIZATIONS 200 40 NIL 3 0)

\vfill

\eject

\noindent \2PRIMES

\vskip 5pt

\3WORTH: 783

GENL: \ Numbers

SPEC: \ Odd-primes, Even-primes, Prime-pairs

EXAMPLES: \ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29,...

$\vdots $

\3GENERALIZATIONS: \ [*\4CACHE\3* (Primes Numbers

\hjust{\hskip 4xgpin  Objects Anything) 54  6  9]}

$\vdots $

\vfill

\eject

{\2\ctrline{PSYCHOLOGICAL IDEAS}}

{\2\ctrline{OF ECONOMY}}

\vskip 2.5xgpin


\3Hierarchical memory    =>   Retain common links

Transform to primitives   =>   Retain lexical tokens


\vfill

\eject

{\2\ctrline{EXPECTATION{\3-}SIMPLIFIED PROCESSING}}

\yyskip

{\:=\ctrline{INTELLIGENT FOCUS OF ATTENTION}}

\yyskip

\yyskip


\3Concentrate on the ABNORMAL, the UNEXPECTED

Expectations: Defaults for slots

When (not) to bother filling in slots



\vfill

\eject

\ctrline{\2MULTIPLE LEVELS}

\ctrline{\2OF ABSTRACTION}

\yyskip

{\:=\ctrline{INTELLIGENT KNOWLEDGE STRUCTURING}}

\vskip 3xgpin


\noindent \3QUICKLY APPROXIMATE REALITY

\vskip -0.25xgpin

``The Goal'' is often an Accuracy/Resources trade-off




\noindent FIND ANALOGIES


\vfill

\eject


\ctrline{\2CONCLUSIONS}

\vskip 2xgpin

\3SELF-MODIFICATION and SELF-MONITORING

CACHING

EXPECTATION-FILTERING

MULTIPLE LEVELS OF ABSTRACTION



\vfill

\eject

\vfill\end